As the value and use of information continues to increase, individuals and businesses continually seek additional ways to process and store information. One option available to users of information is an information handling system. An information handling system generally processes, compiles, stores, and/or communicates information or data for business, personal, or other purposes, thereby allowing users to take advantage of the value of the information. Because technology and information handling needs and requirements vary between different users or applications, information handling systems may also vary with regard to the kind of information that is handled, how the information is handled, how much information is processed, stored, or communicated, and how quickly and efficiently the information may be processed, stored, or communicated. The variations in information handling systems allow for information handling systems to be general or configured for a specific user or specific use, including such uses as financial transaction processing, airline reservations, enterprise data storage, or global communications. In addition, information handling systems may include a variety of hardware and software components that may be configured to process, store, and communicate information and may include one or more computer systems, data storage systems, and networking systems.
Examples of information handling systems, such as computers, including servers and workstations, are often grouped in clusters to perform specific tasks. A server cluster is a group of independent servers that is managed as a single system and is characterized by higher availability, manageability, and scalability, as compared with groupings of unmanaged host server systems. A server cluster typically involves the configuration of a group of independent servers such that the servers appear in the network as a single machine or unit. Server clusters are often managed as a single system, share a common namespace on the network, and are designed specifically to tolerate component failures and to support the addition or subtraction of components in the cluster in a transparent manner. At a minimum, a server cluster includes two or more servers that are connected to one another by a network. The server cluster may include software driven methods by which each client of the server cluster may access the data stored in or controlled by a server of the server cluster. One software application that is used to manage the operation of a server cluster is Microsoft Cluster Service (MSCS), which is produced by the Microsoft Corporation of Redmond, Wash.
Customers and/or users of servers may understand the advantages of using scalable enterprise servers, but often do not have much insight into how their server computing power and/or capacity are being utilized and also when and where scaling may need to occur within their infrastructure. Customers and/or users want insight into how well each of their servers are being utilized and easily to identify and/or foresee bottlenecks in order to scale their hardware investments more effectively. At the same time, customers and/or users do not want to interfere with the main functions and/or network utilization of their servers. In addition, profiling active and/or runaway processes and/or idle systems and causing alerts may help administrators proactively to address issues and/or optimize the computing power of their servers.
However, conventional clustered servers typically have no way to profile system utilization via out-of-band server management functionality so that, consequently, conventional performance characterization of conventional clustered servers uses and/or interrupts the in-band network resources. This ability to profile system utilization would be useful for administrators who manage numerous servers and want an automated mechanism for knowing the utilization of each one over time. This would aid in better function and/or load balancing to optimize the overall infrastructure's utilization as well as understanding better when new servers and/or upgrades would be needed to relieve recurring bottlenecks. Many conventional off-the-shelf performance monitor applications exist, but all of these operate through in-band network interfaces and involve processes always running on the host server.